cmake_minimum_required(VERSION 3.23)
project(DesignPattern)

set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_C_STANDARD 17)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS OFF)
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")

add_executable(singleton singleton.cpp)
add_executable(observer observer.cpp)
add_executable(factory factory.cpp)
add_executable(strategy strategy.cpp)


